package com.landscope.issue.controller.wx.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

@Data
public class AppletMonitorDataDto {
    @ApiModelProperty("风险级别，low：低风险。middle:中风险，high：高风险")
    private String disasterExponential;
    @ApiModelProperty("本周高风险天数")
    private Integer highDisasterExponentialDays;
    @ApiModelProperty("当前日期")
    private String date;
    @ApiModelProperty("置顶参数列表")
    private List<AppletMonitorDataTopParamsItem> topParamsList;
    @ApiModelProperty("波速变化数据列表")
    private List<AppletMonitorDataVvigListItem> vvigList;
    @ApiModelProperty("微裂隙数据列表")
    private List<AppletMonitorDataKdigListItem> kdigList;
    @ApiModelProperty("环境参数列表")
    private List<AppletMonitorDataEnviromentalListItem> enviromentalList;

    @Data
    public static class AppletMonitorDataTopParamsItem{
        @ApiModelProperty("标题")
        private String title;
        @ApiModelProperty("日期")
        private String date;
        @ApiModelProperty("描述")
        private String des;
        @ApiModelProperty("台站名称")
        private String staName;
        @ApiModelProperty("值")
        private String value;
        @ApiModelProperty("最大值")
        private String max;
        @ApiModelProperty("最小值")
        private String min;
        @ApiModelProperty("置顶参数ID")
        private String id;
        @ApiModelProperty("异常等级，1-正常蓝色，2-异常黄色，3-紧急红色")
        private Integer level;
        /**
         * 参数名称  当type为1和2时，传台站对名称，如t01-t02。  当type为3时，传入Rain或者temperatue等，描述如下：Rain-降雨，temperatue-温度，PGV，Pressure-气压，humity-湿度，lamination-光照
         */
        private String paramName;

        /**
         * 参数类型 1-波速变化，2-微裂隙，3-环境变量
         */
        private Integer type;
    }

    @Data
    public static class AppletMonitorDataVvigListItem{
        @ApiModelProperty("标题")
        private String title;
        @ApiModelProperty("日期")
        private String date;
        @ApiModelProperty("描述")
        private String des;
        @ApiModelProperty("台站名称")
        private String staName;
        @ApiModelProperty("值")
        private String value;
        @ApiModelProperty("最大值")
        private String max;
        @ApiModelProperty("最小值")
        private String min;
        @ApiModelProperty("异常等级，1-正常蓝色，2-异常黄色，3-紧急红色")
        private Integer level;
    }

    @Data
    public static class AppletMonitorDataKdigListItem{
        @ApiModelProperty("标题")
        private String title;
        @ApiModelProperty("日期")
        private String date;
        @ApiModelProperty("描述")
        private String des;
        @ApiModelProperty("台站名称")
        private String staName;
        @ApiModelProperty("值")
        private String value;
        @ApiModelProperty("最大值")
        private String max;
        @ApiModelProperty("最小值")
        private String min;
        @ApiModelProperty("异常等级，1-正常蓝色，2-异常黄色，3-紧急红色")
        private Integer level;
    }

    @Data
    public static class AppletMonitorDataEnviromentalListItem{
        @ApiModelProperty("标题")
        private String title;
        @ApiModelProperty("日期")
        private String date;
        @ApiModelProperty("描述")
        private String des;
        @ApiModelProperty("值")
        private String value;
        @ApiModelProperty("最大值")
        private String max;
        @ApiModelProperty("最小值")
        private String min;
        @ApiModelProperty("异常等级，1-正常蓝色，2-异常黄色，3-紧急红色")
        private Integer level;
    }
}
